package cn.sundat.dao;

import java.util.List;

import org.hibernate.criterion.DetachedCriteria;

import cn.sundat.model.Category;
import cn.sundat.model.News;
import cn.sundat.model.PageBean;

public interface NewsDao {
	/**
	 *添加新闻或者政策等 
	 */
	void save(News news);
	
	List<News> find(DetachedCriteria criteria);

	/**
	 * 分页、分类查询新闻
	 * @param currPage 当前页
	 * @param pageSize 页面存储条目数量
	 * @param criteria	离线查询条件
	 * @return
	 */
	PageBean<News> findByPage(Integer currPage, Integer pageSize, DetachedCriteria criteria);
	/**
	 * 前台分类查询新闻
	 * @param criteria
	 * @return
	 */
	List<News> findByCategory(Category category);
	/**
	 * 后台分类查询新闻
	 * @param criteria
	 * @return
	 */
	List<News> findByAdminCategory(DetachedCriteria criteria);
	/**
	 * 根据id删除单挑news
	 * @param news_id
	 */
	void del(Long news_id);
	/**
	 * 根据id查询news
	 * @param news_id
	 * @return
	 */
	News findById(Long news_id);
	/**
	 * 根据id更新news
	 * @param news
	 */
	void update(News news);

	/**
	 * 查询图片新闻
	 * @param c
	 * @return
	 */
	List<News> findImgByCategory(Category c);

	/**
	 * 分页查询会员风采
	 * @param currPage
	 * @param pageSize
	 * @param criteria
	 * @return
	 */
	PageBean<News> findVipNews(Integer currPage, Integer pageSize, DetachedCriteria criteria);

	

}
